'''
模仿charles的rewrite
启动方式为命令行输入：mitmdump -s 文件名(mitm_mapLocal.py)
'''

from mitmproxy import http

class MitmMapLocal:

    # 因为是Maplocal事件，需要在请求时就进行重定向至本地文件，所以使用request
    def request(self,flow:http.HTTPFlow):
        # flow 代表每一个请求，下面的意思是对其中url包含某个字段的请求进行重定向
        if "quote" in flow.request.pretty_url:
            # 事先准备个本地文件
            with open('modify.json','r',encoding='utf-8') as f :
                # 用make方法制作一个响应
                data=f.read()
                # 注意是http.Response.make()方法，Response是类
                flow.response=http.Response.make(status_code=200,
                                                 content=data,
                                                 headers={"Content-Type":"application/json"})
addons=[MitmMapLocal()]
